# 作者: 赵若云
# 2025年02月21日14时41分57秒
# 3478783573@qq.com
import os


def open_rb():
    """
    以二进制模式打开，读出来的内容是字节流
    字节流不可以加encoding='UTF-8'
    :return:
    """
    file = open('file2', 'rb')
    content_bytes = file.read()
    # 英文：b'helloworld'
    # 汉语：b'\xe5\x87\xbd\xe6\x95\xb0' 两个字六个字节
    print(content_bytes)
    file.close()


def copy_picture():
    # 1. 打开文件
    file_read = open("picture.png", "rb")
    file_write = open("picture[副本].png", "wb")
    # 2. 读取并写入文件
    while True:
        # 每次读取一行
        text = file_read.read(1024)
        # 判断是否读取到内容
        if not text:
            break
        file_write.write(text)
    # 3. 关闭文件
    file_read.close()
    file_write.close()


def use_seek():
    file = open('file1', 'r+', encoding='UTF-8')
    # SEEK_SET = 0  从文件的开头开始计数
    # SEEK_CUR = 1
    # SEEK_END = 2  直接到结尾
    file.seek(5, os.SEEK_SET)  # 5是文件指针应该移动的字节数
    # file.seek(-5, os.SEEK_END) #读尾部的五个字节
    txt = file.read()
    print(txt)
    file.close()


def use_seek_w():
    """
    seek和w+的使用
    :return:
    """
    file = open('file2', 'w+', encoding='UTF-8')
    file.write('howareyou')
    file.seek(0, os.SEEK_SET)  # 光标回到开头
    txt = file.read()
    print(txt)
    file.close()


if __name__ == '__main__':
    # open_rb()
    # copy_picture()
    # use_seek()
    use_seek_w()
